/**************************************************************
 **             - IO_AVR.H -
 **
 **     I/O definitions for iccAVR
 **
 **     Used with iccAVR.
 **
 **     Copyright 2001 - 2012 IAR Systems AB. All rights reserved.
 **
 **     File version: $Revision$
 **
 **************************************************************/

#ifdef  __IAR_SYSTEMS_ICC__
#ifndef _SYSTEM_BUILD
#pragma system_include
#endif
#endif

#if defined(__AT90S2313__)
#include "io2313.h"
#elif defined(__AT90S2323__)
#include "io2323.h"
#elif defined(__AT90S2333__)
#include "io2333.h"
#elif defined(__AT90S2343__)
#include "io2343.h"
#elif defined(__AT90S4414__)
#include "io4414.h"
#elif defined(__AT90S4433__)
#include "io4433.h"
#elif defined(__AT90S4434__)
#include "io4434.h"
#elif defined(__AT90S8515__)
#include "io8515.h"
#elif defined(__AT90S8534__)
#include "io8534.h"
#elif defined(__AT90S8535__)
#include "io8535.h"
#elif defined(__AT43USB320A__)
#include "ioat43usb320a.h"
#elif defined(__AT43USB325__)
#include "ioat43usb325.h"
#elif defined(__AT43USB326__)
#include "ioat43usb326.h"
#elif defined(__AT43USB351M__)
#include "ioat43usb351m.h"
#elif defined(__AT43USB353M__)
#include "ioat43usb353m.h"
#elif defined(__AT43USB355__)
#include "ioat43usb355.h"
#elif defined(__AT76C712__)
#include "ioat76c712.h"
#elif defined(__AT76C713__)
#include "ioat76c713.h"
#elif defined(__AT86RF401__)
#include "ioat86rf401.h"
#elif defined(__AT94Kxx__)
#include "ioat94k.h"
#elif defined(__ATA5272__)
#include "ioata5272.h"
#elif defined(__ATA5505__)
#include "ioata5505.h"
#elif defined(__ATA5790__)
#include "ioata5790.h"
#elif defined(__ATA5790N__)
#include "ioata5790n.h"
#elif defined(__ATA5795__)
#include "ioata5795.h"
#elif defined(__ATA5830__)
#include "ioata5830.h"
#elif defined(__ATA5831__)
#include "ioata5831.h"
#elif defined(__ATA5832__)
#include "ioata5832.h"
#elif defined(__ATA5833__)
#include "ioata5833.h"
#elif defined(__ATA6285__)
#include "ioata6285.h"
#elif defined(__ATA6286__)
#include "ioata6286.h"
#elif defined(__ATA6289__)
#include "ioata6289.h"
#elif defined(__AT90CAN128__)
#include "iocan128.h"
#elif defined(__AT90CAN32__)
#include "iocan32.h"
#elif defined(__AT90CAN64__)
#include "iocan64.h"
#elif defined(__ATmega103__)
#include "iom103.h"
#elif defined(__ATmega128__)
#include "iom128.h"
#elif defined(__ATmega1280__)
#include "iom1280.h"
#elif defined(__ATmega1281__)
#include "iom1281.h"
#elif defined(__ATmega1284__)
#include "iom1284.h"
#elif defined(__ATmega1284P__)
#include "iom1284p.h"
#elif defined(__ATmega128A__)
#include "iom128a.h"
#elif defined(__ATmega128RFA1__)
#include "iom128rfa1.h"
#elif defined(__ATmega128RFA2__)
#include "iom128rfa2.h"
#elif defined(__ATmega128RFR2__)
#include "iom128rfr2.h"
#elif defined(__ATmega16__)
#include "iom16.h"
#elif defined(__ATmega161__)
#include "iom161.h"
#elif defined(__ATmega162__)
#include "iom162.h"
#elif defined(__ATmega163__)
#include "iom163.h"
#elif defined(__ATmega164__)
#include "iom164.h"
#elif defined(__ATmega164A__)
#include "iom164a.h"
#elif defined(__ATmega164P__)
#include "iom164p.h"
#elif defined(__ATmega164PA__)
#include "iom164pa.h"
#elif defined(__ATmega165__)
#include "iom165.h"
#elif defined(__ATmega165A__)
#include "iom165a.h"
#elif defined(__ATmega165P__)
#include "iom165p.h"
#elif defined(__ATmega165PA__)
#include "iom165pa.h"
#elif defined(__ATmega168__)
#include "iom168.h"
#elif defined(__ATmega168A__)
#include "iom168a.h"
#elif defined(__ATmega168P__)
#include "iom168p.h"
#elif defined(__ATmega168PA__)
#include "iom168pa.h"
#elif defined(__ATmega169__)
#include "iom169.h"
#elif defined(__ATmega169A__)
#include "iom169a.h"
#elif defined(__ATmega169P__)
#include "iom169p.h"
#elif defined(__ATmega169PA__)
#include "iom169pa.h"
#elif defined(__ATmega16A__)
#include "iom16a.h"
#elif defined(__ATmega16HVA__)
#include "iom16hva.h"
#elif defined(__ATmega16HVA2__)
#include "iom16hva2.h"
#elif defined(__ATmega16HVB__)
#include "iom16hvb.h"
#elif defined(__ATmega16M1__)
#include "iom16m1.h"
#elif defined(__ATmega16U2__)
#include "iom16u2.h"
#elif defined(__ATmega16U4__)
#include "iom16u4.h"
#elif defined(__ATmega2560__)
#include "iom2560.h"
#elif defined(__ATmega2561__)
#include "iom2561.h"
#elif defined(__ATmega256RFA2__)
#include "iom256rfa2.h"
#elif defined(__ATmega256RFR2__)
#include "iom256rfr2.h"
#elif defined(__ATmega26HVG__)
#include "iom26hvg.h"
#elif defined(__M3000__)
#include "iom3000.h"
#elif defined(__ATmega32__)
#include "iom32.h"
#elif defined(__ATmega323__)
#include "iom323.h"
#elif defined(__ATmega324__)
#include "iom324.h"
#elif defined(__ATmega324A__)
#include "iom324a.h"
#elif defined(__ATmega324P__)
#include "iom324p.h"
#elif defined(__ATmega324PA__)
#include "iom324pa.h"
#elif defined(__ATmega325__)
#include "iom325.h"
#elif defined(__ATmega3250__)
#include "iom3250.h"
#elif defined(__ATmega3250A__)
#include "iom3250a.h"
#elif defined(__ATmega3250P__)
#include "iom3250p.h"
#elif defined(__ATmega3250PA__)
#include "iom3250pa.h"
#elif defined(__ATmega325A__)
#include "iom325a.h"
#elif defined(__ATmega325P__)
#include "iom325p.h"
#elif defined(__ATmega325PA__)
#include "iom325pa.h"
#elif defined(__ATmega328__)
#include "iom328.h"
#elif defined(__ATmega328P__)
#include "iom328p.h"
#elif defined(__ATmega329__)
#include "iom329.h"
#elif defined(__ATmega3290__)
#include "iom3290.h"
#elif defined(__ATmega3290A__)
#include "iom3290a.h"
#elif defined(__ATmega3290P__)
#include "iom3290p.h"
#elif defined(__ATmega3290PA__)
#include "iom3290pa.h"
#elif defined(__ATmega329A__)
#include "iom329a.h"
#elif defined(__ATmega329P__)
#include "iom329p.h"
#elif defined(__ATmega329PA__)
#include "iom329pa.h"
#elif defined(__ATmega32A__)
#include "iom32a.h"
#elif defined(__ATmega32C1__)
#include "iom32c1.h"
#elif defined(__ATmega32HVB__)
#include "iom32hvb.h"
#elif defined(__ATmega32M1__)
#include "iom32m1.h"
#elif defined(__ATmega32U2__)
#include "iom32u2.h"
#elif defined(__ATmega32U4__)
#include "iom32u4.h"
#elif defined(__ATmega32U6__)
#include "iom32u6.h"
#elif defined(__ATmega406__)
#include "iom406.h"
#elif defined(__ATmega48__)
#include "iom48.h"
#elif defined(__ATmega48A__)
#include "iom48a.h"
#elif defined(__ATmega48HVF__)
#include "iom48hvf.h"
#elif defined(__ATmega48P__)
#include "iom48p.h"
#elif defined(__ATmega48PA__)
#include "iom48pa.h"
#elif defined(__ATmega4HVD__)
#include "iom4hvd.h"
#elif defined(__ATmega64__)
#include "iom64.h"
#elif defined(__ATmega640__)
#include "iom640.h"
#elif defined(__ATmega644__)
#include "iom644.h"
#elif defined(__ATmega644A__)
#include "iom644a.h"
#elif defined(__ATmega644P__)
#include "iom644p.h"
#elif defined(__ATmega644PA__)
#include "iom644pa.h"
#elif defined(__ATmega645__)
#include "iom645.h"
#elif defined(__ATmega6450__)
#include "iom6450.h"
#elif defined(__ATmega6450A__)
#include "iom6450a.h"
#elif defined(__ATmega6450P__)
#include "iom6450p.h"
#elif defined(__ATmega645A__)
#include "iom645a.h"
#elif defined(__ATmega645P__)
#include "iom645p.h"
#elif defined(__ATmega649__)
#include "iom649.h"
#elif defined(__ATmega6490__)
#include "iom6490.h"
#elif defined(__ATmega6490A__)
#include "iom6490a.h"
#elif defined(__ATmega6490P__)
#include "iom6490p.h"
#elif defined(__ATmega649A__)
#include "iom649a.h"
#elif defined(__ATmega649P__)
#include "iom649p.h"
#elif defined(__ATmega64A__)
#include "iom64a.h"
#elif defined(__ATmega64C1__)
#include "iom64c1.h"
#elif defined(__ATmega64HVE__)
#include "iom64hve.h"
#elif defined(__ATmega64M1__)
#include "iom64m1.h"
#elif defined(__ATmega64RFA2__)
#include "iom64rfa2.h"
#elif defined(__ATmega64RFR2__)
#include "iom64rfr2.h"
#elif defined(__ATmega8__)
#include "iom8.h"
#elif defined(__ATmega8515__)
#include "iom8515.h"
#elif defined(__ATmega8535__)
#include "iom8535.h"
#elif defined(__ATmega88__)
#include "iom88.h"
#elif defined(__ATmega88A__)
#include "iom88a.h"
#elif defined(__ATmega88P__)
#include "iom88p.h"
#elif defined(__ATmega88PA__)
#include "iom88pa.h"
#elif defined(__ATmega8A__)
#include "iom8a.h"
#elif defined(__ATmega8HVA__)
#include "iom8hva.h"
#elif defined(__ATmega8HVD__)
#include "iom8hvd.h"
#elif defined(__ATmega8U2__)
#include "iom8u2.h"
#elif defined(__AT90PWM1__)
#include "iopwm1.h"
#elif defined(__AT90PWM161__)
#include "iopwm161.h"
#elif defined(__AT90PWM2__)
#include "iopwm2.h"
#elif defined(__AT90PWM216__)
#include "iopwm216.h"
#elif defined(__AT90PWM2B__)
#include "iopwm2b.h"
#elif defined(__AT90PWM3__)
#include "iopwm3.h"
#elif defined(__AT90PWM316__)
#include "iopwm316.h"
#elif defined(__AT90PWM3B__)
#include "iopwm3b.h"
#elif defined(__AT90PWM81__)
#include "iopwm81.h"
#elif defined(__AT90SCR050__)
#include "ioscr050.h"
#elif defined(__AT90SCR100__)
#include "ioscr100.h"
#elif defined(__ATtiny10__)
#include "iotiny10.h"
#elif defined(__ATtiny13__)
#include "iotiny13.h"
#elif defined(__ATtiny13A__)
#include "iotiny13a.h"
#elif defined(__ATtiny1634__)
#include "iotiny1634.h"
#elif defined(__ATtiny167__)
#include "iotiny167.h"
#elif defined(__ATtiny20__)
#include "iotiny20.h"
#elif defined(__ATtiny2313__)
#include "iotiny2313.h"
#elif defined(__ATtiny2313A__)
#include "iotiny2313a.h"
#elif defined(__ATtiny23U__)
#include "iotiny23u.h"
#elif defined(__ATtiny24__)
#include "iotiny24.h"
#elif defined(__ATtiny24A__)
#include "iotiny24a.h"
#elif defined(__ATtiny25__)
#include "iotiny25.h"
#elif defined(__ATtiny26__)
#include "iotiny26.h"
#elif defined(__ATtiny261__)
#include "iotiny261.h"
#elif defined(__ATtiny261A__)
#include "iotiny261a.h"
#elif defined(__ATtiny4__)
#include "iotiny4.h"
#elif defined(__ATtiny40__)
#include "iotiny40.h"
#elif defined(__ATtiny4313__)
#include "iotiny4313.h"
#elif defined(__ATtiny43U__)
#include "iotiny43u.h"
#elif defined(__ATtiny44__)
#include "iotiny44.h"
#elif defined(__ATtiny44A__)
#include "iotiny44a.h"
#elif defined(__ATtiny45__)
#include "iotiny45.h"
#elif defined(__ATtiny461__)
#include "iotiny461.h"
#elif defined(__ATtiny461A__)
#include "iotiny461a.h"
#elif defined(__ATtiny48__)
#include "iotiny48.h"
#elif defined(__ATtiny5__)
#include "iotiny5.h"
#elif defined(__ATtiny80__)
#include "iotiny80.h"
#elif defined(__ATtiny828__)
#include "iotiny828.h"
#elif defined(__ATtiny84__)
#include "iotiny84.h"
#elif defined(__ATtiny84A__)
#include "iotiny84a.h"
#elif defined(__ATtiny85__)
#include "iotiny85.h"
#elif defined(__ATtiny861__)
#include "iotiny861.h"
#elif defined(__ATtiny861A__)
#include "iotiny861a.h"
#elif defined(__ATtiny87__)
#include "iotiny87.h"
#elif defined(__ATtiny88__)
#include "iotiny88.h"
#elif defined(__ATtiny9__)
#include "iotiny9.h"
#elif defined(__AT90USB1286__)
#include "iousb1286.h"
#elif defined(__AT90USB1287__)
#include "iousb1287.h"
#elif defined(__AT90USB162__)
#include "iousb162.h"
#elif defined(__AT90USB646__)
#include "iousb646.h"
#elif defined(__AT90USB647__)
#include "iousb647.h"
#elif defined(__AT90USB82__)
#include "iousb82.h"

// ATxmega files
#elif defined(__ATmX224E__)
#include "iomx224e.h"
#elif defined(__ATmXT112SL__)
#include "iomxt112sl.h"
#elif defined(__ATmXT224__)
#include "iomxt224.h"
#elif defined(__ATmXT224E__)
#include "iomxt224e.h"
#elif defined(__ATmXT336S__)
#include "iomxt336s.h"
#elif defined(__ATmXT540S__)
#include "iomxt540s.h"
#elif defined(__ATmXT540S_RevA__)
#include "iomxt540s_reva.h"
#elif defined(__ATxmega128A1__)
#include "ioxm128a1.h"
#elif defined(__ATxmega128A1U__)
#include "ioxm128a1u.h"
#elif defined(__ATxmega128A3__)
#include "ioxm128a3.h"
#elif defined(__ATxmega128A3U__)
#include "ioxm128a3u.h"
#elif defined(__ATxmega128A4U__)
#include "ioxm128a4u.h"
#elif defined(__ATxmega128B1__)
#include "ioxm128b1.h"
#elif defined(__ATxmega128B3__)
#include "ioxm128b3.h"
#elif defined(__ATxmega128C3__)
#include "ioxm128c3.h"
#elif defined(__ATxmega128D3__)
#include "ioxm128d3.h"
#elif defined(__ATxmega128D4__)
#include "ioxm128d4.h"
#elif defined(__ATxmega16A4__)
#include "ioxm16a4.h"
#elif defined(__ATxmega16A4U__)
#include "ioxm16a4u.h"
#elif defined(__ATxmega16C4__)
#include "ioxm16c4.h"
#elif defined(__ATxmega16D4__)
#include "ioxm16d4.h"
#elif defined(__ATxmega192A3__)
#include "ioxm192a3.h"
#elif defined(__ATxmega192A3U__)
#include "ioxm192a3u.h"
#elif defined(__ATxmega192C3__)
#include "ioxm192c3.h"
#elif defined(__ATxmega192D3__)
#include "ioxm192d3.h"
#elif defined(__ATxmega256A3__)
#include "ioxm256a3.h"
#elif defined(__ATxmega256A3B__)
#include "ioxm256a3b.h"
#elif defined(__ATxmega256A3BU__)
#include "ioxm256a3bu.h"
#elif defined(__ATxmega256A3U__)
#include "ioxm256a3u.h"
#elif defined(__ATxmega256C3__)
#include "ioxm256c3.h"
#elif defined(__ATxmega256D3__)
#include "ioxm256d3.h"
#elif defined(__ATxmega32A4__)
#include "ioxm32a4.h"
#elif defined(__ATxmega32A4U__)
#include "ioxm32a4u.h"
#elif defined(__ATxmega32C4__)
#include "ioxm32c4.h"
#elif defined(__ATxmega32D4__)
#include "ioxm32d4.h"
#elif defined(__ATxmega32D4P__)
#include "ioxm32d4p.h"
#elif defined(__ATxmega32E5__)
#include "ioxm32e5.h"
#elif defined(__ATxmega32X1__)
#include "ioxm32x1.h"
#elif defined(__ATxmega384C3__)
#include "ioxm384c3.h"
#elif defined(__ATxmega384D3__)
#include "ioxm384d3.h"
#elif defined(__ATxmega64A1__)
#include "ioxm64a1.h"
#elif defined(__ATxmega64A1U__)
#include "ioxm64a1u.h"
#elif defined(__ATxmega64A3__)
#include "ioxm64a3.h"
#elif defined(__ATxmega64A3U__)
#include "ioxm64a3u.h"
#elif defined(__ATxmega64A4U__)
#include "ioxm64a4u.h"
#elif defined(__ATxmega64B1__)
#include "ioxm64b1.h"
#elif defined(__ATxmega64B3__)
#include "ioxm64b3.h"
#elif defined(__ATxmega64C3__)
#include "ioxm64c3.h"
#elif defined(__ATxmega64D3__)
#include "ioxm64d3.h"
#elif defined(__ATxmega64D4__)
#include "ioxm64d4.h"
// End of ATxmega files

#elif defined(__IAR_SYSTEMS_ASM__)
// Files supported only by the assembler
#if defined(__AT90S1200__)
#include "io1200.h"
#elif defined(__ATtiny11__)
#include "iotiny11.h"
#elif defined(__ATtiny12__)
#include "iotiny12.h"
#elif defined(__ATtiny15__)
#include "iotiny15.h"
#elif defined(__ATtiny28__)
#include "iotiny28.h"
#else
#error This file, should only be assembled with the right symbol defined.
#endif

#else
#error This file, should only be compiled with "--cpu" set
#endif
